Arrays এবং Multidimensional Arrays এর সাথে কাজ

Lists এবং Arrays (লিস্ট এবং অ্যারে) - এফ শার্প প্রোগ্রামিং (F# Programming) - Computer Programming

312

Arrays এবং Multidimensional Arrays এর সাথে কাজ

Arrays এবং Multidimensional Arrays হল ডেটা সংরক্ষণের জন্য ব্যবহৃত কাঠামো যা একাধিক মান একই ধরনের রাখে। F# এ Arrays এবং Multidimensional Arrays ব্যবহার করে আপনি একাধিক ডেটা আইটেম একত্রে সংরক্ষণ করতে পারেন এবং সেগুলির সাথে কার্যকরীভাবে কাজ করতে পারেন। F# তে অ্যারে সাধারণত এক ধরনের ডেটা সংরক্ষণ করার জন্য ব্যবহৃত হয়, যেমন সংখ্যা বা স্ট্রিং।

এখানে আমরা Arrays এবং Multidimensional Arrays এর সাথে কাজ করার প্রাথমিক ধারণা এবং F# তে কীভাবে এগুলি ব্যবহৃত হয় তা দেখব।


১. Arrays (এক্সটেনশান বা একমাত্রিক অ্যারে)

Arrays হল একটি নির্দিষ্ট আকারের ডেটা স্ট্রাকচার যা এক ধরনের ডেটার উপাদানগুলো সংরক্ষণ করে। F# এ অ্যারে তৈরি করা হয় Array মডিউল ব্যবহার করে, যা একটি স্থির আকারের কন্টেইনার।

Array তৈরি করা:

F# এ অ্যারে তৈরি করতে [| |] সিম্বল ব্যবহার করা হয়।

// Create an array with elements
let arr = [| 1; 2; 3; 4; 5 |]

// Print elements of the array
for i in arr do
    printfn "%d" i

এখানে:

  • [| 1; 2; 3; 4; 5 |] একটি একমাত্রিক অ্যারে তৈরি করেছে, যার মধ্যে পাঁচটি সংখ্যা রয়েছে।
  • for i in arr do লুপের মাধ্যমে অ্যারের প্রতিটি উপাদান প্রিন্ট করা হয়েছে।

Array Indexing (অ্যারে ইনডেক্সিং):

// Access elements in an array by index
let firstElement = arr.[0]  // Indexing starts at 0
let secondElement = arr.[1]

printfn "First element: %d" firstElement
printfn "Second element: %d" secondElement

এখানে, অ্যারে ইনডেক্সিং শুরু হয় 0 থেকে। অ্যারের প্রতিটি উপাদান নির্দিষ্ট ইনডেক্স দিয়ে অ্যাক্সেস করা যায়।

Array Length (অ্যারের দৈর্ঘ্য):

let length = arr.Length
printfn "Length of the array: %d" length

এটি অ্যারের দৈর্ঘ্য জানাতে সাহায্য করে। arr.Length ফাংশনটি অ্যারের মোট উপাদান সংখ্যা প্রদান করে।

Arrays এর সাথে কিছু ফাংশন ব্যবহার:

F# তে অ্যারের সাথে কাজ করার জন্য বিভিন্ন ফাংশন ব্যবহৃত হয়, যেমন Array.map, Array.filter, এবং Array.fold

// Double the elements in an array
let doubledArray = Array.map (fun x -> x * 2) arr
printfn "Doubled Array: %A" doubledArray

এখানে, Array.map ফাংশনটি অ্যারের প্রতিটি উপাদানে একটি ফাংশন প্রয়োগ করেছে এবং নতুন অ্যারে doubledArray তৈরি করেছে।


২. Multidimensional Arrays (বহুমাত্রিক অ্যারে)

Multidimensional Arrays হল এমন অ্যারে যা একাধিক মাত্রা (dimensions) বা মাত্রা গঠন করে। F# এ multidimensional arrays তৈরি করা হয়, যা একাধিক দিক বা কলাম ধারণ করে। এটি বিশেষভাবে ব্যবহার করা হয় টেবিল বা ম্যাট্রিক্স ধরনের ডেটা স্ট্রাকচার তৈরি করতে।

Multidimensional Array তৈরি করা:

// Create a 2D array (matrix)
let matrix = array2D [ [1; 2; 3]; [4; 5; 6]; [7; 8; 9] ]

// Print the 2D array (matrix)
for i in 0..2 do
    for j in 0..2 do
        printf "%d " matrix.[i, j]
    printfn ""  // Newline after each row

এখানে:

  • array2D ব্যবহার করে একটি ২-মাত্রিক অ্যারে (ম্যাট্রিক্স) তৈরি করা হয়েছে।
  • matrix.[i, j] মাধ্যমে আমরা অ্যারের উপাদানগুলি অ্যাক্সেস করেছি, যেখানে i এবং j যথাক্রমে সারি (row) এবং কলাম (column)।

Multidimensional Array Indexing (ম্যাট্রিক্স ইনডেক্সিং):

let element = matrix.[1, 2]  // Access element in row 1, column 2
printfn "Element at [1, 2]: %d" element

এখানে matrix.[1, 2] দ্বারা দ্বিতীয় সারি এবং তৃতীয় কলামের উপাদান অ্যাক্সেস করা হয়েছে। (এখানে ইনডেক্সিং ০ থেকে শুরু হয়)

Multidimensional Arrays এর সাথে কাজ:

আপনি বিভিন্ন ধরনের লুপ ব্যবহার করে multidimensional arrays এর সাথে কাজ করতে পারেন, যেমন:

// Create a 3D array (cuboid)
let cuboid = array3D [ [ [1; 2]; [3; 4] ]; [ [5; 6]; [7; 8] ] ]

// Print the 3D array (cuboid)
for i in 0..1 do
    for j in 0..1 do
        for k in 0..1 do
            printf "%d " cuboid.[i, j, k]
        printfn ""  // Newline after each inner loop

এখানে একটি ৩-মাত্রিক অ্যারে তৈরি করা হয়েছে এবং তাতে তিনটি লুপ ব্যবহার করা হয়েছে উপাদানগুলি প্রিন্ট করার জন্য।


৩. Array Functions (অ্যারে ফাংশনস)

F# এ অ্যারের সাথে আরও কিছু শক্তিশালী ফাংশন ব্যবহৃত হয়, যা কোডকে আরও কার্যকরী এবং পঠনযোগ্য করে তোলে। কিছু সাধারণ ফাংশন হল:

  • Array.map: অ্যারের প্রতিটি উপাদানে একটি ফাংশন প্রয়োগ করে।
  • Array.filter: একটি শর্ত ব্যবহার করে অ্যারের উপাদানগুলি ফিল্টার করে।
  • Array.fold: অ্যারে উপাদানগুলিকে একত্রিত করে একটি মান তৈরি করে।
  • Array.reduce: অ্যারে উপাদানগুলির উপর একত্রিত একটি ফাংশন প্রয়োগ করে।
  • Array.concat: একাধিক অ্যারেকে একত্রিত করে।

উদাহরণ:

// Filter even numbers from an array
let evenNumbers = Array.filter (fun x -> x % 2 = 0) arr
printfn "Even numbers: %A" evenNumbers

এখানে, Array.filter ফাংশনটি অ্যারের সব সঠিক (even) সংখ্যাগুলি বের করে এবং একটি নতুন অ্যারে তৈরি করে।


৪. নির্বাচিত ফাংশনসমূহের উদাহরণ:

// Array.map - Double each element
let doubledArray = Array.map (fun x -> x * 2) arr
printfn "Doubled Array: %A" doubledArray

// Array.fold - Sum all elements in the array
let sum = Array.fold (fun acc x -> acc + x) 0 arr
printfn "Sum of Array: %d" sum

// Array.reduce - Find the maximum element in the array
let max = Array.reduce (fun acc x -> if x > acc then x else acc) arr
printfn "Max element: %d" max

এখানে:

  • Array.map প্রতিটি উপাদানকে গুণ করে নতুন অ্যারে তৈরি করেছে।
  • Array.fold অ্যারের সব উপাদান যোগ করে একটি একক মান তৈরি করেছে।
  • Array.reduce অ্যারের মধ্যে সর্বোচ্চ উপাদান খুঁজে বের করেছে।

উপসংহার

F# তে Arrays এবং Multidimensional Arrays ব্যবহারের মাধ্যমে আপনি ডেটাকে একটি সুশৃঙ্খল এবং কার্যকরীভাবে সংরক্ষণ করতে পারেন। একমাত্রিক এবং বহুমাত্রিক অ্যারের সঙ্গে কাজ করার জন্য বিভিন্ন ফাংশনাল অপারেশন যেমন map, filter, fold, এবং reduce ব্যবহৃত হতে পারে। এগুলি আপনাকে আরও শক্তিশালী এবং কার্যকরী কোড তৈরি করতে সাহায্য করে, যা ডেটার সঠিকভাবে প্রসেসিং এবং পরিচালনা করা সহজ করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...